package com.tc.service;

import com.tc.domain.Patient_service_items_order;
import com.baomidou.mybatisplus.extension.service.IService;
import com.tc.dto.Patient_service_items_orderDTO;
import com.tc.dto.Patient_service_items_orderQueryDTO;
import com.tc.vo.PageResultVO;
import com.tc.vo.Patient_service_items_orderVO;

import java.util.List;

/**
 * <p>
 * 患者医疗服务医嘱服务类
 * </p>
 *
 * @author tc
 * @since 2025-07-12
 */
public interface IPatient_service_items_orderService extends IService<Patient_service_items_order> {
    
    /**
     * 分页查询患者医疗服务医嘱
     * 
     * @param queryDTO 查询条件
     * @return 分页结果
     */
    PageResultVO<Patient_service_items_orderVO> pageQuery(Patient_service_items_orderQueryDTO queryDTO);
    
    /**
     * 根据患者ID获取医疗服务医嘱列表
     * 
     * @param patientId 患者ID
     * @return 医疗服务医嘱列表
     */
    List<Patient_service_items_orderVO> getByPatientId(Long patientId);
    
    /**
     * 根据ID获取医疗服务医嘱详情
     * 
     * @param id 医嘱ID
     * @return 医疗服务医嘱详情
     */
    Patient_service_items_orderVO getServiceItemsOrderById(Long id);
    
    /**
     * 新增医疗服务医嘱
     * 
     * @param orderDTO 医疗服务医嘱信息
     * @return 是否成功
     */
    boolean addServiceItemsOrder(Patient_service_items_orderDTO orderDTO);
    
    /**
     * 修改医疗服务医嘱
     * 
     * @param orderDTO 医疗服务医嘱信息
     * @return 是否成功
     */
    boolean updateServiceItemsOrder(Patient_service_items_orderDTO orderDTO);
    
    /**
     * 删除医疗服务医嘱
     * 
     * @param id 医嘱ID
     * @return 是否成功
     */
    boolean deleteServiceItemsOrder(Long id);
    
    /**
     * 批量删除医疗服务医嘱
     * 
     * @param ids ID列表
     * @return 是否成功
     */
    boolean batchDeleteServiceItemsOrder(List<Long> ids);
}
